home *** CD-ROM | disk | FTP | other *** search
- # @(#)README.W95 1.2 8/27/96
-
- *******************************************************************************
- * Threedom: a 3D polygon renderer *
- * (C) Copyright 1996 by Philip Stephens *
- * (C) Copyright 1996 by the IBM Corporation *
- * All Rights Reserved *
- * *
- * Permission to use, copy, modify, and distribute this software and its *
- * documentation without fee for any non-commerical purpose is hereby granted, *
- * provided that the above copyright notice appears on all copies and that *
- * both that copyright notice and this permission notice appear in all *
- * supporting documentation. *
- * *
- * NO REPRESENTATIONS ARE MADE ABOUT THE SUITABILITY OF THIS SOFTWARE FOR ANY *
- * PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. *
- * NEITHER PHILIP STEPHENS OR IBM SHALL BE LIABLE FOR ANY DAMAGES SUFFERED BY *
- * THE USE OF THIS SOFTWARE. *
- *******************************************************************************
-
- Introduction
- ------------
-
- Threedom is a real-time 3D polygon rendering engine. It renders polygons as
- perspective-correct texture mapped surfaces, with flat shading to provide
- basic lighting effects. A Z-buffer is used to implement hidden surface
- removal, and rudimentary culling of polygons that are trivially not visible
- is performed.
-
- Threedom permits you to nagivate through 3D worlds in real-time, although
- collision testing and gravity has not been implemented yet. Nagivation is
- available by using the following keys when the mouse cursor is positioned in
- the display window:
-
- UP ARROW Move forward.
- DOWN ARROW Move back.
- LEFT ARROW Turn left on the spot.
- RIGHT ARROW Turn right on the spot.
- a Look up.
- z Look down.
- x Step (sidle) left.
- c Step (sidle) right.
- SHIFT + key Faster movement
-
- The executable for Threedom, along with a small demo world and textures has been
- provided in the demo subdirectory. After starting the threedom application,
- select the "Open world..." menu item from the "File" menu and load "demo.w3d".
-
- Threedom uses an environment variable THREEDOM_PATH in order to locate
- both worlds and textures. It will always look in the current working
- directory first, but if it cannot find what it needs it will then search
- each path listed in THREEDOM_PATH. The syntax for THREEDOM_PATH is the
- same for PATH i.e. each path is seperated by a semicolon.
-
- Compiling Threedom
- ------------------
-
- You don't have to compile Threedom if you don't want to, but if you're thinking of
- using the code in your own application then you'll need to know how.
-
- I used Borland C++ version 4.5 as my development environment. Borland C++
- version 4.x should be sufficient, but I can't guarentee success on versions
- older that this. The makefiles I've provided will only work with Borland C++;
- if you want to compile the code using a different compiler, you're on your own.
-
- Before you can compile Threedom, you need to compile a simple library that Threedom
- uses to create the Windows 95 GUI. The source for this library is in the winlib
- subdirectory. To compile, type the following from an MS-DOS prompt (remember this
- is for Borland C++ only):
-
- make -f winlib.mak
-
- The source for Threedom is in the subdirectory called threedom. To compile, type
- the following from an MS-DOS prompt:
-
- make -f threedom.mak
-
- You may need to customise both winlib.mak and threedom.mak to tell it where the
- LIB and INCLUDE directories are for Borland C++. The default settings look in
- C:\BC\LIB and C:\BC\INCLUDE respectively. Look at the top of these makefiles for
- details.
-
- If you have difficulty compiling WinLib and Threedom, please let me know by sending
- e-mail to the following address:
-
- philip@galaxy.bocaraton.ibm.com
-